Display control apparatus, display control method, program, and communication system

ABSTRACT

There is provided a display control apparatus including an acquisition section configured to acquire display information for displaying a state of collaborative editing in which a plurality of editors collaboratively edit a same editing target, and a display control section configured to cause an editing screen to display, based on the display information, the state of the collaborative editing performed on a not displayed part not included in a display range displayed when the editing target is displayed on the editing screen referenced to by a first editor among the plurality of editors.

CROSS REFERENCE TO PRIOR APPLICATION

This application is a continuation of U.S. patent application Ser. No.14/408,320 (filed on Dec. 16, 2014), which is a National Stage PatentApplication of PCT International Patent Application No.PCT/JP2013/068320 (filed on Jul. 4, 2013) under 35 U.S.C. § 371, whichclaims priority to Japanese Patent Application No. 2012-156197 (filed onJul. 12, 2012), which are all hereby incorporated by reference in theirentirety.

TECHNICAL FIELD

The present disclosure relates to a display control apparatus, a displaycontrol method, a program, and a communication system, and particularlyrelates to a display control apparatus, a display control method, aprogram, and a communication system which are designed to enhance a workefficiency of collaborative editing performed by a plurality of editorsin such a manner as to collaboratively edit the same editing target suchas a document.

BACKGROUND ART

There is Google Docs (registered trademark), for example, as an on-linetool for a plurality of users to collaboratively edit the same editingtarget through a network such as the Internet.

With Google Docs, a plurality of users (editors) manipulate terminals ofthe respective users, and thereby can collaboratively edit an editingtarget held in a server connected to the terminals through a network.

When using Google Docs, each user edits the editing target in the viewrange of the editing target displayed in the terminal that the usermanipulates.

In use of Google Docs, a communication system including, for example, aplurality of terminals and a server communicating with the terminalsthrough a network is used (see for example, Patent Literature 1).

CITATION LIST Patent Literature

Patent Literature 1: JP 2006-262230A

SUMMARY OF INVENTION Technical Problem

However, when a user uses Google Does, the terminal displays the stateod editing performed on the editing target in the view range, but doesnot display the state of editing performed in a not displayed part thatis not included in the view range.

For this reason, it is not possible for the user to know easily thestate of editing performed in the not displayed part, and thus the workefficiency of the collaborative editing is low.

The present disclosure has been made in view of such circumstances andmakes it possible to enhance the work efficiency of the collaborativeediting.

Solution to Problem

According to a first aspect of the present disclosure, there is provideda display control apparatus including an acquisition section configuredto acquire display information for displaying a state of collaborativeediting in which a plurality of editors collaboratively edit a sameediting target, and a display control section configured to cause anediting screen to display, based on the display information, the stateof the collaborative editing performed on a not displayed part notincluded in a display range displayed when the editing target isdisplayed on the editing screen referenced to by a first editor amongthe plurality of editors.

The display control section may cause the editing screen to display,based on the display information, a change amount representing an amountof change of the not displayed part owing to the collaborative editing.

The display control section may cause the editing screen to display,based on the display information, a type of the collaborative editingperformed on the not displayed part.

The display control section may cause the editing screen to display,based on the display information, an unread display representing a partof the editing target that is not included in the display range.

The display control section may also cause, based on the displayinformation, the state of the collaborative editing performed on theediting target within the display range to be displayed.

According to the first aspect of the present disclosure, there isprovided a display control method of a display control apparatus thatdisplays an image, the display control method including acquiring, bythe display control apparatus, display information for displaying astate of collaborative editing in which a plurality of editorscollaboratively edit a same editing target, and causing, by the displaycontrol apparatus, an editing screen to display, based on the displayinformation, the state of the collaborative editing performed on a notdisplayed part not included in a display range displayed when theediting target is displayed on the editing screen referenced to by afirst editor among the plurality of editors.

According to the first aspect of the present disclosure, there isprovided a program for causing a computer to function as an acquisitionsection configured to acquire display information for displaying a stateof collaborative editing in which a plurality of editors collaborativelyedit a same editing target, and a display control section configured tocause an editing screen to display, based on the display information,the state of the collaborative editing performed on a not displayed partnot included in a display range displayed when the editing target isdisplayed on the editing screen referenced to by a first editor amongthe plurality of editors.

According to the first aspect of the present disclosure, displayinformation for displaying a state of collaborative editing in which aplurality of editors collaboratively edit a same editing target isacquired, and based on the display information, on an editing screen isdisplayed the state of the collaborative editing performed on a notdisplayed part not included in a display range displayed when theediting target is displayed on the editing screen referenced to by afirst editor among the plurality of editors.

According to a second aspect of the present disclosure, there isprovided a communication system including a plurality of communicationterminals manipulated by a plurality of respective editors, and a serverapparatus that communicates with the plurality of communicationterminals through a network.

The server apparatus includes a first acquisition section configured togenerate and thereby acquire display information for displaying a stateof collaborative editing in which the plurality of editorscollaboratively edit a same editing target, and a first display controlsection configured to control display of each of the communicationterminals by transmitting the display information to the communicationterminal.

Each of the communication terminals includes a second acquisitionsection configured to receive and thereby acquire the displayinformation supplied from the server apparatus, and a second displaycontrol section configured to cause an editing screen to display, basedon the acquired display information, the state of the collaborativeediting performed on a not displayed part not included in a displayrange displayed when the editing target is displayed on the editingscreen referenced to by a first editor among the plurality of editors.

According to the second embodiment of the present disclosure, thedisplay information for displaying the state of collaborative editing inwhich a plurality of editors collaboratively edit the same editingtarget is generated and thereby acquired by the server apparatus, andthe display information is transmitted to the communication terminals,thereby the display of the communication terminals is controlled. Inaddition, the display information supplied from the server apparatus isreceived and thereby acquired by each of the communication terminals,and based on the acquired display information, the state of thecollaborative editing on the not displayed part not included in thedisplay range displayed when the editing target is displayed on theediting screen referenced by the first editor is displayed on theediting screen.

Advantageous Effects of Invention

According to the present disclosure, it is possible to enhance the workefficiency of collaborative work.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a block diagram illustrating a configuration example of acommunication system to which the present technology is applied.

FIG. 2 is a diagram illustrating an example of an editing target held ina server.

FIG. 3 is a first diagram illustrating an example of an editing windowdisplayed in a terminal.

FIG. 4 is a diagram illustrating an example of user information held asstate information in a server.

FIG. 5 is a diagram illustrating an example of unread information heldas state information in a server.

FIG. 6 is a second diagram illustrating an example of an editing windowdisplayed in a terminal.

FIG. 7 is a third diagram illustrating an example of an editing windowdisplayed in a terminal.

FIG. 8 is a diagram illustrating an example of editing types.

FIG. 9 is a fourth diagram illustrating an example of an editing windowdisplayed in a terminal.

FIG. 10 is a fifth diagram illustrating an example of an editing windowdisplayed in a terminal.

FIG. 11 is a block diagram illustrating a configuration example of aterminal.

FIG. 12 is a flowchart illustrating transmission processing performed bya terminal.

FIG. 13 is a flowchart illustrating display control processing performedby a terminal.

FIG. 14 is a block diagram illustrating a configuration example of aserver.

FIG. 15 is a flowchart illustrating update processing performed by aserver.

FIG. 16 is a sixth diagram illustrating an example of an editing windowdisplayed in a terminal.

FIG. 17 is a first diagram illustrating an example of a user's own viewdisplayed in a terminal.

FIG. 18 is a second diagram illustrating an example of a user's own viewdisplayed in a terminal.

FIG. 19 is a first diagram illustrating an example of historyinformation of an object.

FIG. 20 is a diagram illustrating an example of a new object obtained bymerging objects.

FIG. 21 is a second diagram illustrating an example of historyinformation of an object.

FIG. 22 is a third diagram illustrating an example of a user's own viewdisplayed in a terminal.

FIG. 23 is a fourth diagram illustrating an example of a user's own viewdisplayed in a terminal.

FIG. 24 is a fifth diagram illustrating an example of a user's own viewdisplayed in a terminal.

FIG. 25 is a sixth diagram illustrating an example of a user's own viewdisplayed in a terminal.

FIG. 26 is a seventh diagram illustrating an example of a user's ownview displayed in a terminal.

FIG. 27 is a block diagram illustrating a configuration example of acomputer.

DESCRIPTION OF EMBODIMENTS

Hereinafter, embodiments of the present disclosure (hereinafter referredto as embodiments) will be described. Note that the description is givenin the following order.

1. First embodiment (an example of displaying the state of editingperformed in a not displayed part that is not included in a view range)

2. Second embodiment (an example of displaying not only a manipulationGUI of a user but also manipulation GUIs of other users)

3. Third embodiment (an example of editing on an object basis)

1. First Embodiment

[Configuration Example of Communication System 1]

FIG. 1 illustrates a configuration example of a communication system 1to which the present technology is applied.

The communication system 1 includes a plurality of terminals 21 ₁ to 21_(N) which are manipulated by a respective plurality of users (editors),a network 22 such as the Internet or LAN (Local Area Network), and aserver 23.

Note that the communication system 1 is used, for example, when theplurality of users perform collaborative editing, that is, collaborateto edit one editing target held in the server 23 through the network 22.

Here, an editing target is a file (data) to be edited collaboratively.As the editing target, for example, a document, a spread sheet (a tableformed by rows and columns), a material for presentation, graphics, animage, a moving image, sound data, or the like may be employed.

Hereinbelow, the description is given on the assumption that the editingtarget is a document for convenience of the description. Data structureof the editing target will be described in detail with reference to FIG.2.

By manipulating a terminal 21 _(n) (n=1, 2, . . . , N), a user thereofcauses the terminal 21 _(n) to execute a collaborative editingapplication for collaboratively editing the editing target held in theserver 23 through the network 22 in collaboration with a user of anotherterminal 21 _(m) (n≠m).

Thus, in response to the execution of the collaborative editingapplication, the terminal 21 _(n) thereby requests, through the network22, the server 23 for display information for displaying an editingwindow to be referred to by the user of the terminal 21 _(n) incollaboratively editing the editing target.

The terminal 21 _(n) displays the editing window based on the displayinformation supplied from the server 23 through the network 22 inresponse to the request for the display information.

The editing window displays not only the state of editing by the user ofthe terminal 21 _(n) but also the state of editing by the user of theother terminal 21 _(m). Note that the display in the editing window isthe point of the present disclosure, and thus examples of displays inthe editing window will be described in detail with reference to FIGS.6, 7, 9, and 10 and the like to be described later.

Further, based on editing manipulation performed by the user of theterminal 21 _(n) while referring to the editing window, the terminal 21_(n) generates update information for updating the editing target andstate information which are held in the server 23, and supplies theserver 23 with the update information through the network 22.

Note that the state information indicates the state (condition) ofediting performed on the editing target, and is used when the server 23generates display information.

As the state information, for example, user information including acaret (cursor) position and the like changing in accordance with theuser editing manipulation, unread information including an editing pointand the like yet to be checked by the user, and the like may beemployed.

The user information will be described in detail with reference to FIGS.3 and 4. When the user information is used as the state information,editing windows as illustrated in FIGS. 6 and 7 are displayed in theterminal 21 _(n).

The unread information will be described in detail with reference toFIG. 5. When the user information and the unread information are used asthe state information, editing windows as illustrated in FIGS. 9 and 10are displayed in the terminal 21 _(n).

In addition, not only the user information and the unread informationbut also manipulation GUI information and the like may be employed asthe state information, the manipulation GUI information including theposition of a manipulation GUI (graphical user interface) which ismanipulated in editing the editing target and displays the content ofthe editing.

When the user information, the unread information, and the manipulationGUI information are employed as the state information, editing windowsas illustrated in FIGS. 17 and 18 are displayed in the terminal 21 _(n).

Further, the state information is not limited to the user information,the unread information, and the manipulation GUI information. Forexample, history information and the like may be employed, the historyinformation indicating a history of editing the editing target. The caseof using the history information as the state information will bedescribed in detail with reference to FIGS. 18 to 26.

That is, the communication system 1 may display various editing windowsin the terminal 21 _(n) according to a combination of the stateinformation and the update information.

The server 23 receives the update information from the terminal 21 _(n)through the network 22, and updates the editing target and the stateinformation held in a not shown built-in storage section, based on thereceived update information.

The server 23 also generates the display information addressed to theterminal 21 _(n) based on the editing target and the state information.Then, through the network 22, the server 23 supplies the terminal 21_(n) with the display information addressed to the terminal 21 _(n) tothereby control display in the editing window of the terminal 21 _(n).

Although the description will be given below on the assumption that thecommunication system 1 includes the plurality of terminals 21 ₁ to 21_(N), the network 22, and the server 23, the terminal 21 _(n) which isone of the plurality of the terminals 21 ₁ to 21 _(N) may be configuredto have the same function as that of the server 23. In this case, theterminal 21 _(n) also serves as the server 23, and thus the server 23may be omitted.

Next, FIG. 2 illustrates an example of an editing target held in theserver 23.

The editing target (or data indicating the editing target) is held inthe server 23, for example, in association with a file ID (“0000540” inFIG. 2) for identifying the editing target, as illustrated in FIG. 2.

Note that the server 23 generates the editing target, for example, inresponse to the request from the terminal 21 _(n) and holds the editingtarget in the built-in storage section. Then, the server 23 updates theheld editing target based on the update information from the terminal 21_(n).

In other words, for example, the user performs the editing manipulationfor editing the editing target on the terminal 21 _(n).

In this case, the terminal 21 _(n) generates update informationincluding a user ID for identifying the user of the terminal 21 _(n) afile ID for identifying the editing target, and the content of theediting of the editing target, based on the editing manipulation of theuser, and supplies the server 23 with the update information through thenetwork 22.

Note that the terminal 21 _(n) in advance holds the user ID in a notshown built-in memory. Further, for example, the terminal 21 _(n)receives the file ID of the editing target from the server 23 throughthe network 22 at the time of executing the collaborative editingapplication, and holds the file ID in the not shown built-in memory.

The server 23 updates the editing target to have the editing contentincluded in the update information supplied from the terminal 21 _(n)the editing target being a file identified by the file ID also includedin the update information among files held in the not shown storagesection.

Next, FIG. 3 illustrates an example of an editing window 41 displayed inthe terminal 21 _(n).

Note that, for convenience of the description, FIG. 3 only illustratesthe state of editing by the user of the terminal 21 _(n). However,actually, the editing window 41 displays the state of editing not onlyby the user of the user of the terminal 21 _(n) but also by the user ofthe other terminal 21 _(m). Examples of the actual displays in theediting window 41 will be described by using FIGS. 6, 7, 9, 10, and thelike.

The editing window 41 includes a user's own view 41 a and an entire view41 b. Note that the editing window 41 may display only either the user'sown view 41 a or the entire view 41 b in accordance with themanipulation by the user of the terminal 21 _(n) for example.

The user's own view 41 a is a screen to which the user himself/herself(the user of the terminal 21 _(n)) refers in editing, and displays, forexample, “sample text . . . ” as characters included in a document ofthe editing target.

The entire view 42 b is a screen on which the document which is theediting target is displayed as a whole, and displays, for example, anentire thumbnail 61 which is an overall view of the document. The entireview 42 b also displays a frame 81 b surrounding a part of the entirethumbnail 61 and corresponding to a view range (display range) of thedocument displayed in the user's own view 41 a.

For example, by manipulating the terminal 21 _(n) the user thereofcauses the terminal 21 _(n) to execute the collaborative editingapplication to set a certain file (such as a document) as an editingtarget.

In this way, the terminal 21 _(n) displays the editing window 41 asillustrated in FIG. 3.

For example, by manipulating the terminal 21 _(n), the user designatesan editing range (range surrounded by a dotted line in FIG. 3)representing a range to be edited in the view range of the user's ownview 41 a.

In addition, for example, by manipulating the terminal 21 _(n) the userselects either “collaboration” or “exclusion” as a type of the editingrange. In “collaboration”, the user edits the editing target incollaboration with another user (for example, a user of the terminal 21_(m)). In “exclusion”, only the user exclusively edits the editingtarget. Note that the editing types will be described in detail withreference to FIG. 8.

Then, the user starts inputting characters at a position designated by acaret (cursor) 81 a in the designated editing range. In FIG. 2, theuser's own view 41 a displays “Hel” which is a text string beingcurrently input.

The terminal 21 _(n) generates update information in accordance withuser manipulation of the terminal 21 _(n) and supplies the server 23with the update information through the network 22.

Next, FIG. 4 illustrates an example of the user information held as thestate information in the server 23.

The user information includes a user ID representing the user of theterminal 21 _(n) a view file ID representing a file currently displayedin a view range, a view range viewed by the user, a caret positionrepresenting the position of the caret 81 a used by the user, data beingcurrently input representing data being currently input by the user,editing range representing a range of editing by the user, and anediting type.

For example, the user refers to the editing window 41 as illustrated inFIG. 3 to perform editing manipulation such as moving the caret 81 a. Inthis case, in accordance with the editing manipulation by the user, theterminal 21 _(n) generates update information for updating the caretposition of the caret 81 a to the caret position resulting from themoving in accordance with the editing manipulation by the user.

Then, the terminal 21 _(n) supplies the server 23 through the network 22with the update information generated in accordance with the editingmanipulation by the user.

Based on the update information supplied from the terminal 21 _(n)through the network 22, the server 23 updates the user information heldtherein as the state information of the terminal 21 _(n).

Specifically, the terminal 21 _(n) generates the update informationincluding, for example, a user ID “A002”, a file ID “0000540”, a viewrange “25-75” after the user's editing manipulation, a caret position“50, 10”, data “Hel” being currently input, an editing range “48-51”,and the editing type “collaboration”.

Note that the view range “25-75” indicates that a part from the 25thline to the 75th line of the document which is the editing target is setas the view range. The caret position “50, 10” indicates that the caret81 a is present at a position in the 50th line and the 10th column ofthe document. Further, the editing range “48-51” indicates that a partfrom the 48th line to the 51st line of the document is set as theediting range.

The terminal 21 _(n) supplies the server 23 with the generated updateinformation through the network 22.

The server 23 extracts the user ID “A002” and the file ID “0000540” fromthe update information supplied from the terminal 21 _(n) through thenetwork 22. The server 23 reads out user information including the thusextracted user ID and the file ID from the not shown built-in storagesection.

The server 23 then compares the read out user information with theupdate information from the terminal 21 _(n), changes the read out userinformation based on the comparison result, supplies the not shownbuilt-in storage section with the changed user information, and storesthe user information therein in an overwrite manner.

Specifically, suppose a case where, for example, the user informationread out by the server 23 includes the user ID “A002”, the file ID“0000540”, the view range “25-75”, a caret position “50, 9”, the data“Hel” being currently input, the editing range “48-51”, and the editingtype “collaboration”.

In addition, for example, the update information supplied from theterminal 21 _(n) to the server 23 includes the user ID “A002”, the fileID “0000540”, the view range “25-75”, the caret position “50, 10”, thedata “Hel” being currently input, the editing range “48-51”, and theediting type “collaboration”.

In this case, the user information read out by the server 23 and theupdate information supplied from the terminal 21 _(n) to the server 23are different from each other only in the caret position, and are thesame in the other items.

The server 23 detects the item “caret position” different between theread out user information and the update information supplied from theterminal 21 _(n) through the network 22, and changes the detected item“caret position” from “50, 9” to “50, 10”.

Then, the server 23 supplies the not shown built-in storage section withthe user information including the changed caret position, and storesthe user information therein in the overwrite manner.

Based on the changed user information, the server 23 also updates unreadinformation also held in the built-in storage section.

Next, FIG. 5 illustrates an example of the unread information held inthe server 23 as the state information.

As illustrated in FIG. 5, the unread information includes a user IDrepresenting a user who has not read an editing target, a file IDrepresenting an unread file, a target line representing a line edited bya different user, a change amount representing an amount of change dueto editing by the different user, and a changer ID representing thedifferent user who changes the target line by the change amount.

In FIG. 5, an unread information piece displayed in the first rowincludes a user ID “A002”, a file ID “0000540”, a target line “48”, achange amount “34”, and a changer ID “A003”.

In addition, an unread information piece displayed in the second rowincludes a user ID “A002”, a file ID “0000541”, a target line “90”, achange amount “40”, and a changer ID “A004”.

For example, the unread information piece displayed in the first rowindicates that a different user identified by the changer ID “A003”changes the 48th line in an editing target (for example, a document)identified by the file ID “0000540” by the change amount “34”.

In this case, the change amount may be, for example, the number ofcharacters changed due to the editing by the different user.

The unread information piece displayed in the first row also indicatesthat a user identified by the user ID “A002” has not viewed (not read) achanged part changed by the different user shown by the changer ID“A003”. These hold true for the unread information piece displayed inthe second row.

After updating the editing target and the state information (forexample, the user information and the unread information) based on theupdate information from the terminal 21 _(n) supplied through thenetwork 22, the server 23 generates display information addressed to atleast one target terminal to which the display information should betransmitted, based on the updated editing target and the stateinformation. Then, the server 23 supplies the target terminal throughthe network 22 with the display information addressed to the targetterminal.

Note that the server 23 determines a target terminal based on, forexample, update information from a terminal 21 _(n) and user informationstored in the not shown built-in storage section.

Specifically, for example, when the server 23 updates the file IDincluded in user information based on update information from a terminal21 _(n), that is, when the user changes an editing target, the server 23determines, as a target terminal, a terminal 21 _(n) of any user whoviews a file shown by a file ID before or after the change.

In addition, for example, when updating a view range included in userinformation or unread information based on update information from aterminal 21 _(n), the server 23 determines, as a target terminal, theterminal 21 _(n) having transmitted the update information.

Further, for example, when updating a caret position or data beingcurrently input included in user information based on update informationfrom a terminal 21 _(n), the server 23 determines, as a target terminal,any terminal 21 _(n) having the user's own view 41 a which is changedaccording to the change of the caret position of the caret 81 a.

In other words, among terminals 21 _(n) of users viewing a filerepresented by a file ID included in the update information from theterminals 21 _(n), the server 23 determines, as target terminals, theterminals 21 _(n) of the following users: any user who moves the caret81 a within or into the view range; and any user who moves the caret 81a out of the view range.

Moreover, for example, when updating an editing range or an editing typeincluded in user information, or the content of an editing target basedon update information from a terminal 21 _(n) the server 23 determines,as a target terminal, a terminal 21 _(n) of any user viewing the editingtarget.

[Example of Case where Caret of User B is Displayed in User's Own View41 a of User A]

FIG. 6 illustrates an example of the editing window 41 displayed in aterminal 21 _(n) of a user A when a user B edits an editing target in aview range of the user A.

For convenience of the description, the description is given withreference to FIG. 6 on the assumption that only the user A and the userB perform the collaborative editing. This holds true for description tobe given later with reference to FIGS. 7 to 9.

As illustrated in FIG. 6, the caret 81 a of the user A, a caret 82 a ₁of the user B, and a thumbnail 82 a ₂ representing the face of the userB near the caret 82 a ₁ are displayed in the user's own view 41 a of theuser A.

Note that not only the face of the user B but also, for example, anavatar or a portrait of the user B may be employed as the thumbnail 82 a₂. In other words, the thumbnail 82 a ₂ may be any display, as long asthe display can uniquely identify the user B.

Based on, for example, the update information from the terminal 21 _(n)of the user A and the update information from the terminal 21 _(m) ofthe user B, the server 23 updates an editing target and stateinformation which are held therein. Then, the server 23 generatesdisplay information for displaying the editing window 41 as illustratedin FIG. 6 based on the updated editing target and state information, andsupplies the terminal 21 _(n) with the display information through thenetwork 22.

The terminal 21 _(n) displays the editing window 41 as illustrated inFIG. 6, based on the display information supplied from the server 23through the network 22.

Note that in FIG. 6, a caret position of user information of the user Bis included in a view range of user information of the user A as stateinformation.

When, for example, the caret position of the user information of theuser B is not included in the view range of the user information of theuser A as the state information, the terminal 21 _(n) displays theediting window 41 as illustrated in FIG. 7 based on the displayinformation supplied from the server 23 through the network.

[Example of Case where View Range or the Like of Different User B isDisplayed in Entire View 41 b of User A]

Next, FIG. 7 illustrates an example of the editing window 41 displayedin the terminal 21 _(n) of the user A when the caret of the user B ispresent beyond the view range of the user A.

In FIG. 7, only the caret 81 a of the user A is displayed in the user'sown view 41 a of the user A. This is because the caret of the user B isnot included in the view range of the user A.

In addition, the frame 81 b showing the view range of the user A and astrip display 82 b ₁ showing the editing range of the user B aredisplayed in the entire view 41 b of the user A, as illustrated in FIG.7. On the strip display 82 b ₁, for example, a thumbnail 82 b ₂ (likethe thumbnail 82 a ₂) of the user B is displayed.

Note that in FIG. 7, a range occupied by the strip display 82 b ₁ is theediting range of the user B, but may be a view range of the user B.

The strip display 82 b ₁ may also show not only the editing range of theuser B but also the type of the editing by the user B.

[Editing Types]

Next, FIG. 8 illustrates an example of the editing types.

As illustrated in FIG. 8, examples of the editing types include“exclusion (high)”, “exclusion (low)”, and “collaboration” arranged inorder of the degree of exclusive editing, from the highest degree.

The type “exclusion (high)” means that the user B edits an editing rangein a state where the user B does not share the editing in the editingrange of the user B with the user A, and the editing range is hiddenfrom the user A.

In “exclusion (high)”, only the user B can view his/her own editingrange through the user's own view 41 a of the user B and edit theediting target.

Accordingly, even if, for example, the user A attempts to display theediting range of the user B in the user's own view 41 a of the user A,the state of editing by the user B (for example, the caret of the user Bor the editing content) is not displayed, and only display indicatingthat the user B is currently editing the editing target is shown.

The type “exclusion (low)” means that the user B edits the editing rangein a state where the user B shares the editing in the editing range ofthe user B with the user A.

In “exclusion (low)”, not only the user B but also the user A can viewthe editing range of the user B through the respective user's own views41 a, but only the user B can edit the editing range of the user B.

Accordingly, for example, the user A can view the state of editing bythe user B through the user's own view 41 a of the user A by displayingthe editing range of the user B in the user's own view 41 a of the userA. However, it is not possible for the user A to edit the editing rangeof the user B.

The type “collaboration” means that the editing range is edited in astate where the user B shares the display and manipulation of theediting range of the user B with the user A.

In “collaboration”, the user A in addition to the user B can view theediting range of the user B through the respective user's own views 41a, and can edit the editing range of the user B.

Note that the editing type is in advance set as, for example,“collaboration”, and may be configured so as to be changed by themanipulation of the terminal 21 _(m) by the user B. This holds true forany of the terminals 21 ₁ to 21 _(N).

For example, when there are a plurality of editing types as illustratedin FIG. 8, it is possible to represent the editing type of the user Bbased on at least one of the color, the pattern, and the shape of thestrip display 82 b ₁.

Note that the editing types are not limited to the three typesillustrated in FIG. 8, and thus may be, for example, any two types orone type of “collaboration”, “exclusion (low)”, and “exclusion (high)”.

Meanwhile, also based on, for example, the unread information of theuser A, the server 23 may generate the display information fordisplaying the editing window 41 as illustrated in FIG. 9 to bedescribed later.

[Example of Case where Unread Part of User a is Displayed in Entire View41 b]

FIG. 9 illustrates an example of the editing window 41 displaying, onthe entire view 41 b, unread parts which are parts yet to be read by theuser A.

Note that in FIG. 9, the user's own view 41 a has the same configurationas in FIG. 6.

As illustrated in FIG. 9, the entire view 41 b of the user A displaysthe unread parts and a read part of the user A in the entire thumbnail61 in a discriminatory manner.

Here, the unread part means a part which has not been displayed in theuser's own view 41 a of the user A, while the read part means a partwhich has already been displayed in the user's own view 41 a of the userA.

Specifically, the entire view 41 b displays, in the entire thumbnail 61,for example, unread parts 61 a and 61 b of the user A in black and aread part 61 c of the user A in white.

When the user B edits the read part 61 c, the read part 61 c isdisplayed as an unread part of the user A.

In addition, for example, when being displayed in the user's own view 41a, the unread part 61 a is displayed as a read part with the color ofthe unread part 61 a changed from black to white.

Further, for example, the user's own view 41 a displays an unreaddocument (text strings) by using thick characters. Then, when the unreaddocument is read after the elapse of a predetermined time from thedisplay of the document, the user's own view 41 a displays thecharacters in the document by using thin characters.

That is, for example, the user's own view 41 a displays the unreaddocument and the read document in the discriminatory manner.

As has been described with reference to FIG. 9, the entire view 41 bdisplays the unread part of the user A, and the user A can easily knowwhere the user A has not checked yet.

In addition, for example, when the user B edits the read part 61 c inthe entire view 41 b, the read part 61 c is displayed as an unread partof the user A. For this reason, the user A can perform the collaborativeediting without overlooking the change in editing by the other user B.

[Example of Editing Window Displayed when Three or More Users PerformCollaborative Editing]

Next, FIG. 10 illustrates an example of the editing window 41 displayedwhen three or more users perform collaborative editing.

The editing window 41 illustrated in FIG. 10 shows an editing window ofthe terminal 21 _(n) of the user A displayed when, for example, aplurality of different users A, B, C, and D perform the collaborativeediting.

Note that components in the editing window 41 illustrated in FIG. 10which have the same configuration as those in FIG. 9 are denoted by thesame reference signs, and thus descriptions thereof are hereinafteromitted appropriately.

As illustrated in FIG. 10, the entire view 41 b of the user A displays astrip display 83 b ₁ of the user C and a thumbnail 83 b ₂ representingthe user C in the unread part 61 a.

In the strip display 83 b ₁, for example, a range occupied by the stripdisplay 83 b ₁ in the entire thumbnail 61 shows an editing range of theuser C.

The strip display 83 b ₁ has a horizontal line pattern, and the patternshows that the editing type of the user C is “exclusion (low)”.

Note that a message such as “I am puzzling my brains about the editing!”or “I will finish the editing by today” may be displayed on the stripdisplay 83 b ₁.

The user A referencing to the entire view 41 b in this way can easilyknow the degree of progress of the editing by, for example, the user C,as information on the state of editing by the user C. This holds truefor the other strip displays (such as a strip display 84 b ₁ to bedescribed later).

Further, in the strip display 83 b ₁, a larger number of addedhorizontal lines represent a larger change amount in the editing by theuser C. That is, the number of added horizontal lines of the stripdisplay 83 b ₁ represents the change amount of the user C.

Note that the change amount may be represented by the color or the shapeof the strip display 83 b ₁. In other words, it is possible to representthe more or less of the change amount by using at least one of, forexample, the pattern, the color, and the shape of the strip display 83 b₁.

Specifically, for example, a larger change amount may be represented bya darker color of the strip display 83 b ₁, or the strip display 83 b ₁may be shaped to extend in the right and left directions in the figure.This holds true for the strip display 84 b ₁ to be described later.

As illustrated in FIG. 10, the entire view 41 b of the user A displays astrip display 84 b ₁ of the user D and a thumbnail 84 b ₂ representingthe user D in the unread part 61 b.

For example, a range occupied by the strip display 84 b ₁ in the entirethumbnail 61 shows an editing range of the user D.

In addition, the strip display 84 b ₁ has a vertical line pattern, andthe pattern shows that the editing type of the user D is“collaboration”.

Note that a message such as “Do collaborate with us!” or “I couldcollaborate with you.” may be displayed on the strip display 84 b ₁.

The user A referencing to the entire view 41 b in this way can know inmore detail how much, for example, the user D wishes to collaborate withthe other users, as information on the state of editing by the user D.

Further, in the strip display 84 b ₁, a larger number of added verticallines represent a larger change amount in the editing by the user D.That is, the number of added vertical lines of the strip display 84 b ₁represents the change amount of the user D.

As has been described with reference to FIG. 10, the entire view 41 bdisplays, for example, the strip displays 83 b ₁ and 84 b ₁ showing theediting types. This enables, for example, the user A referencing to theentire view 41 b to know in real time the editing types in the editingby the users C and D other than the user A.

[Configuration Example of Terminal 21 _(n)]

Next, FIG. 11 illustrates a configuration example of a terminal 21 _(n).

The terminal 21 _(n) is a notebook computer or the like and includes amanipulation section 101, a generation section 102, a communicationsection 103, a display control section 104, and a display section 105.Note that the manipulation section 101 may be formed to be integral withthe terminal 21 _(n) or to be connected to the terminal 21 _(n) througha cable or the like. This holds true for the display section 105.

The manipulation section 101 is a keyboard or the like, and manipulatedby the user of the terminal 21 _(n). For example, in accordance with theediting manipulation by the user, the manipulation section 101 suppliesthe generation section 102 with a manipulation signal corresponding tothe user's editing manipulation.

Note that when the manipulation section 101 is connected to the terminal21 _(n) through a cable or the like, not only a keyboard but also amouse or the like may be employed as the manipulation section 101.

The generation section 102 generates update information corresponding tothe user's editing manipulation based on the manipulation signal fromthe manipulation section 101, and supplies the communication section 103with the update information.

The communication section 103 supplies (transmits) the updateinformation from the generation section 102 to the server 23 through thenetwork 22.

In addition, the communication section 103 receives and thereby acquiresdisplay information supplied from the server 23 through the network 22.Then, the communication section 103 supplies the display control section104 with the acquired display information.

The display control section 104 causes the display section 105 todisplay the editing window 41 based on the display information from thecommunication section 103.

The display section 105 is an LCD (Liquid Crystal Display) or the like,and displays the editing window 41 under the control of the displaycontrol section 104.

[Explanation of Operation of Terminal 21 _(n)]

Next, with reference to a flowchart in FIG. 12, a description is givenof transmission processing in which a terminal 21 _(n) generates andtransmits update information to the server 23.

The transmission processing is started, for example, when the userperforms editing manipulation by using the manipulation section 101 ofthe terminal 21 _(n). At this time, the manipulation section 101supplies the generation section 102 with a manipulation signalcorresponding to the user's editing manipulation.

In Step S21, the generation section 102 generates update informationcorresponding to the user's editing manipulation based on themanipulation signal from the manipulation section 101, and supplies thecommunication section 103 with the update information.

In Step S22, the communication section 103 supplies the server 23through the network 22 with the update information received from thegeneration section 102. Then, the transmission processing is terminated.

As described above, according to the transmission processing, thecommunication section 103 of the terminal 21 _(n) supplies the server 23through the network 22 with the update information corresponding to theuser's editing manipulation.

Accordingly, the server 23 can update an editing target and stateinformation to be up-to-date, based on the update information from theterminal 21 _(n). The server 23 can make the editing window 41 of eachterminal 21 _(n) up-to-date, based on the editing target and the stateinformation which are made up-to-date.

Next, with reference to a flowchart in FIG. 13, a description is givenof display control processing in which the terminal 21 _(n) controls thedisplaying of the editing window 41.

The display control processing is started, for example, when the server23 transmits display information addressed to the terminal 21 _(n) tothe terminal 21 _(n) through the network 22.

In Step S41, the communication section 103 receives and thereby acquiresthe display information addressed to the terminal 21 _(n) supplied fromthe server 23 through the network 22, and supplies the display controlsection 104 with the acquired display information.

In Step S42, the display control section 104 causes the display section105 to display the editing window 41 based on the display informationfrom the communication section 103. Then, the display control processingis terminated.

As described above, according to the display control processing, thedisplay control section 104 displays the editing window 41 based on thedisplay information supplied from the server 23 through the network 22and the communication section 103.

Accordingly, the display control processing makes it possible todisplay, in collaborative editing, the editing window 41 on which thestates of editing performed by a plurality of different users arereflected.

Thus, a user who edits an editing target while referencing to theediting window 41 can perform editing work while recognizing the stateof editing performed by the other users. This makes it possible toenhance the work efficiency of the collaborative editing.

[Configuration Example of Server 23]

Next, FIG. 14 illustrates a configuration example of the server 23.

The server 23 includes a communication section 121, an update section122, a storage section 123, and a display information generation section124.

The communication section 121 supplies the update section 122 withupdate information supplied from a terminal 21 _(n) through the network22.

The communication section 121 also controls the displaying of theediting window 41 performed by the display section 105 of the terminal21 _(n), based on display information addressed to the terminal 21 _(n)which is supplied from the display information generation section 124.

In other words, for example, the communication section 121 supplies theterminal 21 _(n) through the network 22 with the display informationaddressed to the terminal 21 _(n) which is supplied from the displayinformation generation section 124, and thereby causes the displaysection 105 of the terminal 21 _(n) to display the editing window 41based on the display information addressed to the terminal 21 _(n).

The update section 122 determines a target terminal based on the updateinformation from the communication section 121 and state information(for example, user information) held in the storage section 123, andsupplies the display information generation section 124 with an user IDrepresenting the user of the determined target terminal.

In addition, the update section 122 updates an editing target and thestate information stored in the storage section 123, based on the updateinformation from the communication section 121.

The storage section 123 stores (holds) therein, as the editing targetand the state information, user information, unread information, and thelike.

The display information generation section 124 generates and therebyacquires the display information addressed to the terminal 21 _(n) ofthe user identified by the user ID received from the update section 122,based on the editing target and the state information which are updatedby the update section 122, and supplies the communication section 121with the display information.

[Explanation of Operation of Server 23]

Next, with reference to a flowchart in FIG. 15, a description is givenof update processing in which the server 23 updates an editing targetand state information based on update information from a terminal 21_(n) and generates and transmits display information addressed to theterminal 21 _(n).

The update processing is started, for example, when the terminal 21transmits update information to the server 23 through the network 22.

In Step S61, the communication section 121 receives the updateinformation from the terminal 21 _(n) through the network 22, andsupplies the update section 122 with the update information.

In Step S62, the update section 122 determines a target terminal whichis a transmission target of the display information, based on the updateinformation from the communication section 121 and the user informationas the state information stored in the storage section 123, and suppliesthe display information generation section 124 with a user IDrepresenting a user of the determined target terminal.

In Step S63, the update section 122 updates the editing target and thestate information (for example, the user information or the unreadinformation) stored in the storage section 123, based on the updateinformation from the communication section 121.

In Step S64, the display information generation section 124 generatesand thereby acquires display information addressed to the terminal 21_(n) (target terminal) of the user represented by the user ID receivedfrom the update section 122, based on the editing target and the stateinformation stored in the storage section 123, and supplies thecommunication section 121 with the display information.

In Step S65, the communication section 121 transmits, to the terminal 21_(n) through the network 22, the display information addressed to theterminal 21 _(n) which is received from the display informationgeneration section 124, and thereby controls the displaying in theterminal 21 _(n). After the aforementioned steps, the update processingis terminated.

As described above, according to the update processing, the server 23updates the editing target and the state information indicating thestate of editing by the user (such as a caret position or the editingtype), based on the update information supplied from the terminal 21_(n) through the network 22.

Then, the server 23 generates the display information of the terminal 21_(n) which is the target terminal based on the editing target and thestate information which are updated, and supplies the terminal 21 _(n)with the display information through the network 22. Thereby, the server23 causes the display section 105 of the terminal 21 _(n) to display theup-to-date editing window 41.

Accordingly, in the display section 105 of the terminal 21 _(n) thestate of editing by the user A of the terminal 21 _(n), the state beingdisplayed in the view range can be viewed by using the user's own view41 a, and the state of editing beyond the view range of the user A canbe viewed by using the entire view 41 b.

Thus, even if, for example, the user B is not editing the editing targetin the view range of the user's own view 41 a of the user A, use of theentire view 41 b enables the user A to easily know the state of editingby the user B. This enables the plurality of users to efficiently editthe editing target held in the server 23.

In the first embodiment, the description has been given of thedisplaying the caret 81 a of the user A and the like in the user's ownview 41 a of the user A.

However, the user's own view 41 a may display, as a manipulation GUI, adialogue or the like for changing the font of characters, themanipulation GUI being manipulated when an editing target is edited anddisplaying the content of the editing.

In this case, the manipulation GUI information including the position ofthe manipulation GUI is also used as the state information held in theserver 23. Then, the server 23 updates not only the user information butalso the manipulation GUI information in accordance with the updateinformation from the terminal 21 _(n) and generates display informationfor displaying the editing window 41 including the manipulation GUI,based on the user information, the manipulation GUI information, and thelike which are updated.

The server 23 supplies a target terminal with the generated the displayinformation through the network 22, and thereby causes the targetterminal to display the editing window 41 including the manipulationGUI.

Moreover, also for the manipulation GUI, it is possible to set any oneof “collaboration”, “exclusion (low)”, and “exclusion (high)” in thesame manner as for the editing range as described with reference to FIG.8.

2. Second Embodiment

[Example of Editing Window Displaying Dialogue as Manipulation GUI]

Next, FIG. 16 illustrates another example of the editing window 41displayed in a terminal 21 _(n).

In FIG. 16, the user's own view 41 a of the user A of the terminal 21displays as the manipulation GUI a dialogue 141 for, for example,changing the font.

Note that FIG. 16 illustrates only the caret 81 a of the user A and thelike to avoid complexity of the figure, and omits carets of the otherusers such as the user B.

The user A uses the manipulation section 101 of the terminal 21 _(n) toperform selection manipulation by which a text string “abcdef” displayedin the user's own view 41 a is selected by using the caret 81 a.

In addition, the user A uses the manipulation section 101 of theterminal 21 _(n) to perform display manipulation for displaying thedialogue 141 for changing the font of the selected text string “abcdef”,so that the dialogue 141 is displayed in the user's own view 41 a.

In this case, for example, the terminal 21 _(n) appropriately generatesupdate information in accordance with the selection manipulation or thedisplay manipulation by the user A, and supplies the server 23 with theupdate information through the network 22. The server 23 updates stateinformation such as manipulation GUI information which is held in theserver 23, based on the update information supplied from the terminal 21_(n) through the network 22, and generates display information addressedto the terminal 21 _(n) based on the updated state information.

The server 23 supplies the terminal 21 _(n) through the network 22 withthe generated display information addressed to the terminal 21 _(n) andthereby causes the display section 105 of the terminal 21 _(n) todisplay the editing window 41 as illustrated in FIG. 16.

For example, when “exclusion (high)” is set for the dialogue 141, thedialogue 141 is displayed in the user's own view 41 a of only the userA. Accordingly, in this case, only the user A can manipulate thedialogue 141 in the user's own view 41 a of the user A.

Note that restriction information (such as “exclusion (high)”) set forthe dialogue 141 due to the manipulation by the user A is included inthe update information and is supplied from the terminal 21 _(n) to theserver 23 through the network 22.

For example, when “exclusion (low)” is set for the dialogue 141, thedialogue 141 is displayed in the user's own views 41 a of the user A andthe other users such as the user B.

Note that when “exclusion (low)” is set for the dialogue 141, only theuser A can change the font by manipulating the dialogue 141.

Further, for example, when “collaboration” is set for the dialogue 141,the dialogue 141 is displayed in the user's own views 41 a of the user Aand the other users such as the user B. The other users such as the userB as well as the user A can also change the font by manipulating thedialogues 141 displayed in the respective user's own views 41 a.

Next, FIG. 17 illustrates an example of the user's own view 41 adisplaying a plurality of the manipulation GUIs.

Note that FIG. 17 illustrates only the user's own view 41 a to avoidcomplexity of the figure and omits the entire view 41 b.

Incidentally, the editing window 41 may be designed to display only theuser's own view 41 a as illustrated in FIG. 17.

As illustrated in FIG. 17, the user's own view 41 a displays a pluralityof dialogues 141 a ₁, 141 a ₂, and 141 a ₃ as the manipulation GUIs.

The dialogue 141 a ₁ is a dialogue generated in accordance withmanipulation by, for example, the user A of the terminal 21 _(n) whichdisplays the user's own view 41 a in FIG. 17, and represents amanipulation GUI manipulated in changing the font of a text string 142 a₁ selected by the user A.

The dialogue 141 a displays, for example, a selection menu for selectingthe font of the text string 142 a ₁ to display the content of theediting.

Note that the dialogue 141 a ₁ is displayed at a position correspondingto the text string 142 a ₁ which is a font change target. In otherwords, for example, the position (for example, the center of gravity) ofthe dialogue 141 a ₁ is within a predetermined distance away from theposition of the text string 142 a ₁. This holds true for the dialogues141 a ₂ and 141 a ₃.

The dialogue 141 a ₂ is a dialogue generated in accordance withmanipulation by, for example, the user B, and represents a manipulationGUI which is manipulated in editing an editing range 142 a ₂ selected bythe user B and which displays the content of editing in the editingrange 142 a ₂. In addition, a thumbnail 143 a ₂ of the user B and theuser name “Rodrigues” are displayed near the dialogue 141 a ₂.

Further, for example, the content of description in the editing range142 a ₂ is displayed as a reflection flipped left-to-right in thedialogue 141 a ₂. Note that the dialogue 141 a ₂ may be displayed in adeformed manner. In other words, the dialogue 141 a ₂ may be displayed,for example, as a balloon of the user B. This holds true for thedialogue 141 a ₃.

The dialogue 141 a ₃ is a dialogue generated in accordance withmanipulation by, for example, the user C, and represents a manipulationGUI which is manipulated in editing a still image 142 a ₃ selected bythe user C and which displays the content of editing of the still image142 a ₃. In addition, the thumbnail 143 a ₃ of the user C and the username “Jennifer” are displayed near the dialogue 141 a ₃.

Further, for example, the still image 142 a ₃ is displayed as areflection flipped left-to-right in the dialogue 141 a ₃.

The user A views the dialogues 141 a ₂ and 141 a ₃ displayed in theuser's own view 41 a of the user A as illustrated in FIG. 17, andthereby can easily know the state of editing by the users B and C.

Further, in FIG. 17, the user's own view 41 a of the user A displays, inthe discriminatory manner, the dialogue 141 a ₁ generated by the user Aand the dialogues 141 a ₂ and 141 a ₃ generated by the users B and C.

Specifically, for example, the dialogue 141 a ₁ is displayed as a planeparallel to the plane of the user's own view 41 a, as illustrated inFIG. 17. In addition, for example, the dialogues 141 a ₂ and 141 a ₃ arethree-dimensionally displayed in such a manner as to be obliquely tiltedwith respect to the plane of the user's own view 41 a.

In addition, the dialogues 141 a ₂ and 141 a ₃ are transparent. The userA can thus view the editing target displayed in the user's own view 41a, through the dialogues 141 a ₂ and 141 a ₃.

Further, the user's own view 41 a displays the front side of thedialogue 141 a ₁ and the back sides of the dialogues 141 a ₂ and 141 a₃. In other words, for example, the dialogue 141 a ₁ displayscharacters, graphics, and the like as they are, while the dialogues 141a ₂ and 141 a ₃ display characters (mirror writing), graphics, and thelike flipped left-to-right.

Accordingly, it is possible to display as if the user B (Rodrigues inthis case) displayed in the thumbnail 143 a ₂ were changing thedescription content of the editing range 142 a ₂ by manipulating thedialogue 141 a ₂ in the user's own view 41 a, as illustrated in FIG. 17.

This holds true for the dialogue 141 a ₃. That is, it is possible todisplay as if the user C (Jennifer in this case) displayed in thethumbnail 143 a ₃ were cropping (trimming) the still image 142 a ₃ bymanipulating the dialogue 141 a ₃.

In addition, since the front side of the dialogue 141 a ₁ is displayedin the user's own view 41 a as illustrated in FIG. 17, the user Aediting the editing target while referencing to the user's own view 41 acan edit the font of the text string 142 a, by manipulating the dialogue141 a ₁.

Incidentally, the dialogues 141 a ₁ to 141 a ₃ in the user's own view 41a are preferably displayed without overlapping with each other.

Accordingly, for example, to prevent the overlapping, the server 23 maygenerate display information for displaying the dialogues 141 a ₁ to 141a 3 in which arrangement thereof, sizes, and the like are changed.

In this case, the terminal 21 _(n) can display the dialogues 141 a ₁ to141 a ₃ not overlapping with each other in the user's own view 41 a,based on the display information supplied from the server 23 through thenetwork 22.

In addition, for example, when the dialogues 141 a ₁ to 141 a ₃ overlapwith each other, the order of layers may be determined according to thepriority. Note that the priority may be set in advance, or may be setby, for example, the user A of the terminal 21 _(n).

In other words, for example, when the dialogues 141 a ₁ to 141 a ₃overlap with each other, the dialogue 141 a ₁ may be displayed on theuppermost layer according to the priority; the dialogue 141 a ₂, behindthe dialogue 141 a ₁; and the dialogue 141 a ₃, behind the dialogue 141a ₂.

Meanwhile, for example, the user A designates an editing range and editsthe editing target in the editing range.

Accordingly, the user A can cancel the editing manipulation in thedesignated editing range to restore the state thereof to the statebefore the editing manipulation, by performing, for example, Undorepresenting manipulation of cancelling the most recent editingmanipulation.

However, for example, when the user A is performing collaborativeediting or the like and thus is editing the editing target in the sameediting range as for the user B, performing Undo by the user A mightunintentionally cancel the editing manipulation by the user B.

To put it differently, suppose a case where the user B performs theediting manipulation after the user A performs the editing manipulation.When the user A then performs Undo, the editing manipulation immediatelybefore Undo, that is, the editing manipulation by the user B iscancelled.

Hence, a conceivable way to prevent such an incident is editing theediting target in a unit of an object (component of the editing target).In other words, it is conceivable that the editing target including aplurality of objects is collaboratively edited in the unit of theobject.

Specifically, for example, each user separately writes text, and textwritten by each user is regarded as an object. The collaborative editingis performed in the unit of the object.

In this case, update information is information for updating text as anobject edited by a user, information for instructing for combining orseparating objects, and the like.

In addition, at least, for example, history information indicating ahistory of editing an object is employed as state information held inthe server 23.

3. Third Embodiment

[Example of User's Own View 41 a Displaying Plurality of Objects]

Next, FIG. 18 illustrates an example of the user's own view 41 adisplaying a plurality of objects.

The user's own view 41 a of, for example, the user A displays aplurality of objects 161, 162, 163, 164, and 165 included in an editingtarget, as illustrated in FIG. 18.

In FIG. 18, the object 161 being currently edited by the user A and theobjects 164 and 165 having edited by the user A and another user such asthe user B are displayed as they are.

Note that the user's own view 41 a of the user A may display the object161 being currently edited by the user A in such a manner as todiscriminate from the objects 164 and 165.

In addition, the objects 162 and 163 being currently edited by the otherusers such as the user B are displayed in such a manner as to be, forexample, semitransparent and flipped light-to-left. Note that the degreeof transparency of the objects 162 and 163 is not limited to thesemitransparency.

Further, in FIG. 18, thumbnails 181, 182, 183, 184, and 185 in theuser's own view 41 a of the user A represent the users who have edit theobjects 161, 162, 163, 164, and 165 most recently, respectively.

Note that the objects 161 to 165 can be displayed in such a manner asnot to overlap with each other, like the manipulation GUIs described inthe second embodiment.

In addition, for example, when the objects 161 to 165 overlap with eachother, the objects 161 to 165 are displayed in the order, for example,according to the priority of the objects, like the manipulation GUIsdescribed in the second embodiment.

Further, for example, “exclusion (high)”, “exclusion (low)”, and“collaboration” can be set for the objects 161 to 165 as for themanipulation GUIs.

In addition, for example, the user A can move the objects 161 to 165 andchange the sizes of the objects 161 to 165, by manipulating the terminal21 _(n) while referencing to the user's own view 41 a of the user A.This holds true for the other users such as the user B.

In this case, update information in accordance with the manipulation bythe user A is generated by the terminal 21 _(n) of the user A, and issupplied to the server 23 through the network 22.

The server 23 generates display information for displaying the editingwindow 41 including the user's own view 41 a as illustrated in FIG. 18,based on the update information and the like supplied from the terminal21 _(n) through the network 22.

Then, the server 23 supplies terminals 21 _(n) which are targetterminals through the network 22 with the generated display information,and thereby causes the terminals 21 _(n) to display the editing window41 including the user's own view 41 a as illustrated in FIG. 18.

[Example of History Information]

Next, FIG. 19 illustrates an example of history information 201 of theobject 161 held as state information in the server 23.

The history information 201 indicates a history of editing the object161 and is associated with an object ID for uniquely identifying theobject 161.

The history information 201 indicates that the user A edits the object161 at editing time T1, with the editing content being move (x, y).

The editing content of move (x, y) indicates that the object 161 ismoved to a position (x, y) in the document, that is, the position (x, y)of the object 161 in the user's own view 41 a illustrated in FIG. 18.

The history information 201 also indicates that the user B edits theobject 161 at editing time T2 which is prior to editing time T1, withthe editing content being add “Pekgjr”. The editing content of add“Pekgjr” indicates that a character string “Pekgjr . . . ” is added tothe object 161.

Further, the history information 201 includes profile informationProfile on the user A who is the last editor of the object 161. Theprofile information Profile is used to display the thumbnail 181 nearthe upper left corner of the object 161.

As for the objects 162 to 165, history information configured in thesame manner as for the object 161 is also held in the server 23. Thehistory information is updated by the server 23 based on updateinformation supplied from the terminal 21 _(n) through the network 22.

Next, FIG. 20 illustrates an example of an object 166 newly obtained bymerging the object 164 and the object 165.

For example, when the user A performs the merge manipulation for addingthe object 165 to the end of the object 164 which is text by using theterminal 21 _(n), the terminal 21 _(n) generates update information inaccordance with the merge manipulation by the user A, and supplies theserver 23 with the update information through the network 22.

The server 23 updates an object and history information thereof as stateinformation held therein, based on the update information supplied fromthe terminal 21 _(n) through the network 22.

Then, the server 23 generates display information addressed to theterminal 21 _(n) based on the updated object and history information,and supplies the terminal 21 _(n) with the display information throughthe network 22. Thereby, the server 23 causes the terminal 21 _(n) todisplay the user's own view 41 a including the object 166 as illustratedin FIG. 20.

The thumbnail 184 for the object 164 and the thumbnail 185 for theobject 165 are displayed near the upper left corner of the object 166.

The plurality of users can easily understand that the object 166 isnewly generated by merging the object 164 and the object 165, forexample, from the thumbnails 184 and 185 displayed near the upper leftcorner of the object 166.

With reference to FIG. 20, when the thumbnail 184 displayed near theupper left corner of the object 166 is selected, the object 164corresponding to the thumbnail 184 is displayed. As a method fordisplaying the object 164 in this case, pop-up display can be employed,for example. This holds true for the thumbnail 185.

Note that the thumbnail 184 is selected by performing mouseover ofhovering the mouse cursor over the thumbnail 184, clicking the thumbnail184, or the like.

Further, in FIG. 20, as cancellation manipulation, for example, by whichthe user A and the other users such as the user B cancel the mergemanipulation by the user A, it is possible to perform select and dragthe thumbnail 184 or 185 displayed near the upper left corner of theobject 166. In this case, the object 166 is separated into the objects164 and 165 before being merged. That is, the user's own view 41 adisplays the separated objects 164 and 165, instead of the object 166.

Note that when some or all of collaborative editors permit the merge ofthe objects 164 and 165, the two thumbnails 184 and 185 displayed nearthe upper left corner of the object 166 change into the thumbnail of theuser A who is the last editor performing the merge manipulation.

Here, when performing explicit manipulation, the collaborative editorscan thereby permit the merge of the objects 164 and 165. Besides, forexample, when performing no manipulation of the object 166 in apredetermined time period from the start of the display of the object166, the collaborative editors can thereby permit the merge of theobjects 164 and 165 implicitly.

[Another Example of History Information]

Next, FIG. 21 illustrates an example of history information 202 of theobject 166 held as state information in the server 23.

The history information 202 indicates a history of editing the object166 and is associated with an object ID for uniquely identifying theobject 166.

The history information 202 indicates that the user A generates theobject 166 by editing the object 164 and the object 165 at editing timeT3, with the editing content being merge.

The editing content of merge indicates that the objects 164 and 165 aremerged, for example, in such a manner that the object 165 is added tothe end of text which is the object 164.

The server 23 generates the history information 202 of the object 166from history information 203 of the object 164 and history information204 of the object 165, based on update information supplied from theterminal 21 _(n) in accordance with the merge manipulation by the userA, and holds therein the history information 202 as state information.

Meanwhile, in FIG. 20, the thumbnail 184 for the object 164 and thethumbnail 185 for the object 165 are displayed near the upper leftcorner of the object 166 to show that the object 166 is an objectobtained by merging the objects 164 and 165.

However, for example, for users such as the user B other than the user Ahaving performed the merge manipulation, the structure of the object 166is difficult to understand from just seeing the object 166 asillustrated in FIG. 20 which is displayed in the user's own views 41 a.

In other words, it is not possible for the users such as the user Bhaving not performed the merge manipulation to easily understand how theobjects 164 and 165 are merged to obtain the object 166.

Hence, it is desirable that the objects 164 and 165 forming the object166 in FIG. 20 be displayed in the discriminatory manner.

In other words, for example, in the object 166, the object 164 and theobject 165 are displayed in such a manner as to be discriminated fromeach other by using different colors. Thereby, the structure of theobject 166 can be easily understood.

Alternatively, the object 166 generated from the objects 164 and 165 maybe displayed, for example, as illustrated in FIG. 22 in such a manner asto discriminate between the object 164 and the object 165.

FIG. 22 illustrates an example of the user's own view 41 a whichdisplays the object 166 in such a manner as to discriminate between theobjects 164 and 165.

The user's own view 41 a displays, for example, animation as illustratedin FIG. 22, in accordance with the merge manipulation by the user A formerging the object 164 with the object 165.

In other words, as illustrated in FIG. 22, for example, the user's ownview 41 a displays the object 164 as it is, and also displays, by usingthe animation, how the object 165 is being merged with the object 164 towhich the object 165 is to be added.

Specifically, for example, the user's own view 41 a displays animationshowing as if the object 165 were sucked between characters of theobject 164, at a position at which the object 165 is added to the object164. Note that duration of the animation may be a predetermined periodor a period set by a predetermined user.

This enables not only the user A having performed the merge manipulationbut also the other users such as the user B not having performed themerge manipulation to easily know the position of the object 164 atwhich the object 165 is added, and the objects 164 and 165 forming theobject 166.

Then, for example, when the user B or the like knowing the content ofthe merged object 166 thinks that the objects 164 and 165 should nothave been merged to generate the new object 166, the user B or the likecan designate the object 166 to cancel the merge.

Meanwhile, for example, in the case where a work completed through thecollaborative editing is reviewed, histories of the editing of theobjects are desirably designed to be displayed to enable checking ofediting histories of the users and the degree of contribution to theediting.

In other words, in response to a request from the terminal 21 _(n) theserver 23 can generate display information for displaying a history ofediting a certain object, based on the history information and the likeheld therein.

The server 23 supplies the terminal 21 _(n) as a target terminal withthe generated display information through the network 22 and thereby cancause the terminal 21 _(n) to display the user's own view 41 a asillustrated in FIGS. 23 to 25.

Next, FIG. 23 illustrates an example of the user's own view 41 a inwhich buttons for displaying a history of editing an object arearranged.

Note that components which are displayed in the user's own view 41 aillustrated in FIG. 23 and are configured in the same manner as in FIG.18 are denoted by the same reference numerals as in FIG. 18.

In other words, FIG. 23 is different from FIG. 18 in that the thumbnails181 to 183 display photos of the faces of the last editors,respectively, and that an object 221 and the like are displayed insteadof the objects 164 and 165 and the thumbnails 184 and 185 in FIG. 18.

In FIG. 23, the user's own view 41 a displays a thumbnail 241 of a userwho is the last editor of the object 221 near the upper left corner ofthe object 221. The user's own view 41 a also displays a list button261, a degree-of-contribution button 262, and a time line button 263near the upper right corner of the object 221.

Note that the list button 261, the degree-of-contribution button 262,and the time line button 263 are displayed, for example, when a historyof editing the object 221 is displayed. By using these buttons, mode ofdisplaying an editing history (display mode) can be changed.

The list button 261 represents a button to be pressed to display a listof users who have edited the object 221.

The degree-of-contribution button 262 represents a button to be pressedto display the degree of contribution representing how much each userhaving edited the object 221 contributes to the editing.

The time line button 263 represents a button to be pressed to displaythe history of the editing of the object 221 in time series.

FIG. 24 illustrates an example of the user's own view 41 a displayedwhen, for example, the user A presses the list button 261 throughmanipulation of the terminal 21 _(n).

In FIG. 24, the user's own view 41 a displays, in addition to the object221, the thumbnail 241 and thumbnails 242, 243, and 244 at the left sideof the object 221 in a predetermined order from the top down in thefigure. In other words, for example, the user's own view 41 a displaysthe thumbnails 241, 242, 243, and 244 respectively representing the mostrecent editor (the last editor) having edited the object 221, the secondrecent editor, the third recent editor, and the fourth recent editor, inthis order from the top down in the figure.

For example, when the user A selects the thumbnail 242 in the user's ownview 41 a illustrated in FIG. 24 by mouseover or clicking using theterminal 21 _(n) a part edited by the user represented by the thumbnail242 is displayed in an emphasized manner in the object 221.

This enables the user A referencing to the user's own view 41 aillustrated in FIG. 24 to easily know who edits (changes) the object 221and which part thereof is edited (changed).

Next, FIG. 25 illustrates an example of the user's own view 41 adisplayed when, for example, the user A presses thedegree-of-contribution button 262 through the manipulation of theterminal 21 _(n).

In FIG. 25, for example, a text 281 firstly added to the object 221 isdisplayed in the center of the user's own view 41 a, and texts 282, 284,283, and 285 are displayed in such a manner as to surround the text 281in this order clockwise from an upper part of the figure.

Thumbnails 241, 243, 242, and 244 are provided near the upper leftcorners of the texts 282, 284, 283, and 285, respectively.

In addition, the texts 282, 284, 283, and 285 represent parts (forexample, the last edited parts) of texts edited by users respectivelydisplayed using the thumbnails 241, 243, 242, and 244.

Further, the text 281 is connected to the texts 282, 284, 283, and 285through respective lines 301, 303, 302, and 304.

Here, the line 301 has a thickness corresponding to the degree ofcontribution of the user displayed in the thumbnail 241 to thecollaborative editing.

Note that the degree of contribution is determined based on at least oneof the number of editing times of the user displayed in the thumbnail241, an editing time period of the user, the number of times ofevaluation of the user made by the other users, and the like.

In FIG. 25, since the user displayed in the thumbnail 241 has thehighest degree of contribution in the users displayed in the thumbnails241 to 244, the line 301 is the thickest in the lines 301 to 304.

Meanwhile, when, for example, the user A presses the time line button263 through the manipulation of the terminal 21 _(n) the user's own view41 a of the user A displays the history of the collaborative editing ofthe object 221 in time series, for example, downwards from the upperpart of the user's own view 41 a.

In this case, the user's own view 41 a is provided with a sliderextending in a vertical direction, and the content of the collaborativeediting at any time point can be checked by moving the slider.

As described with reference to FIGS. 23 to 25, the user's own view 41 ais designed to display the editing history, for example. Accordingly, itis possible to review the editing target while referencing to theediting history displayed in the user's own view 41 a, and thus toenhance the work efficiency of the collaborative editing.

Meanwhile, for example, in the case where the collaborative editors editobjects of texts and thereafter determine the order of arranging theedited objects, it is preferable for each collaborative editor tovisually know the arrangement order of the objects in the user's ownview 41 a.

Next, FIG. 26 illustrates an example of the user's own view 41 adisplayed when a plurality of users determine the order of arrangingobjects.

Note that FIG. 26 illustrates the user's own view 41 a of, for example,the user A, and the user's own view 41 a displays objects 321, 323, and323 which are texts. FIG. 26 also illustrates a front-end display 341shaped like a needle and a thread-shaped line 342 representing a lineshaped like a thread.

For example, the plurality of users write text formed by the textobjects 321 to 323 as illustrated in FIG. 26 by changing the arrangementof the objects 321 to 323, the users work to determine the order ofarranging the objects 321 to 323.

In other words, when, for example, the user A on behalf of the otherusers performs selection manipulation of the objects 321 to 323 inhis/her desired order, the selecting order is desirably checked in theuser's own view 41 a of each user.

Thus, when, for example, the user A performs selection manipulation ofthe objects 321 and 322 in this order, the objects 321 and 322 asillustrated in FIG. 26 are displayed in the user's own view 41 a of theuser A, for example.

In other words, the user's own view 41 a of, for example, the user Adisplays that the front-end display 341 provided with the front end ofthe thread-shaped line 342 passes through the object 321 and then theobject 322.

The user's own view 41 a of the user A displays, in a discriminatorymanner, the objects 321 and 322 having been selected by the user A andthe object 323 not having been selected.

Specifically, in the user's own view 41 a of, for example, the user A,the objects 321 and 322 having been selected by the user A are displayedthree-dimensionally, while the object 323 not having been selected isdisplayed two-dimensionally. Further, the objects 321 and 322 havingbeen selected by the user A may be displayed in a wavy manner.

These hold true for the user's own view 41 a of any of the users otherthan the user A.

As described with reference to FIG. 26, for example, the user's own view41 a intuitively displays the arrangement order of the objects 321 to323 (using the front-end display 341 and the thread-shaped line 342).Accordingly, it is possible to review the editing target displayed inthe user's own view 41 a while referencing to the display as illustratedin FIG. 26 and thus to enhance the work efficiency of the collaborativeediting.

Additionally, the present technology may also be configured as below.

(1) A display control apparatus including:

an acquisition section configured to acquire display information fordisplaying a state of collaborative editing in which a plurality ofeditors collaboratively edit a same editing target; and

a display control section configured to cause an editing screen todisplay, based on the display information, the state of thecollaborative editing performed on a not displayed part not included ina display range displayed when the editing target is displayed on theediting screen referenced to by a first editor among the plurality ofeditors.

(2) The display control apparatus according to (1),

wherein the display control section causes the editing screen todisplay, based on the display information, a change amount representingan amount of change of the not displayed part owing to the collaborativeediting.

(3) The display control apparatus according to (1) or (2),

wherein the display control section causes the editing screen todisplay, based on the display information, a type of the collaborativeediting performed on the not displayed part.

(4) The display control apparatus according to any one of (1) to (3),

wherein the display control section causes the editing screen todisplay, based on the display information, an unread displayrepresenting a part of the editing target that is not included in thedisplay range.

(5) The display control apparatus according to any one of (1) to (4),

wherein the display control section also causes, based on the displayinformation, the state of the collaborative editing performed on theediting target within the display range to be displayed.

(6) A display control method of a display control apparatus thatdisplays an image, the display control method including:

acquiring, by the display control apparatus, display information fordisplaying a state of collaborative editing in which a plurality ofeditors collaboratively edit a same editing target; and

causing, by the display control apparatus, an editing screen to display,based on the display information, the state of the collaborative editingperformed on a not displayed part not included in a display rangedisplayed when the editing target is displayed on the editing screenreferenced to by a first editor among the plurality of editors.

(7) A program for causing a computer to function as:

an acquisition section configured to acquire display information fordisplaying a state of collaborative editing in which a plurality ofeditors collaboratively edit a same editing target; and

a display control section configured to cause an editing screen todisplay, based on the display information, the state of thecollaborative editing performed on a not displayed part not included ina display range displayed when the editing target is displayed on theediting screen referenced to by a first editor among the plurality ofeditors.

(8) A communication system including:

a plurality of communication terminals manipulated by a plurality ofrespective editors; and

a server apparatus that communicates with the plurality of communicationterminals through a network,

wherein the server apparatus includes

-   -   a first acquisition section configured to generate and thereby        acquire display information for displaying a state of        collaborative editing in which the plurality of editors        collaboratively edit a same editing target, and    -   a first display control section configured to control display of        each of the communication terminals by transmitting the display        information to the communication terminals, and

wherein each of the communication terminals includes

-   -   a second acquisition section configured to receive and thereby        acquire the display information supplied from the server        apparatus, and    -   a second display control section configured to cause an editing        screen to display, based on the acquired display information,        the state of the collaborative editing performed on a not        displayed part not included in a display range displayed when        the editing target is displayed on the editing screen referenced        to by a first editor among the plurality of editors.

The above mentioned series of processes can, for example, be executed byhardware or software. In the case where the series of processes isexecuted by software, a program configuring this software is installedin a computer from a medium recording a program. Here, examples of thecomputer include a computer incorporated into specialized hardware, anda general-purpose computer which is capable of executing variousfunctions by installing various programs.

[Configuration Example of Computer]

FIG. 27 illustrates a configuration example of hardware of a computerthat executes the above series of processes by programs.

A CPU (Central Processing Unit) 401 executes various processingaccording to programs stored in a ROM (Read Only Memory) 402 or astorage section 408. The RAM (Random Access Memory) 403 appropriatelystores the programs executed by the CPU 401, data, and the like. The CPU401, the ROM 402, and the RAM 403 are connected to each other through abus 404.

In addition, an input/output interface 405 is connected to the CPU 401through the bus 404. An input section 406 and output section 407 areconnected to the input/output interface 405, the input section 406including a keyboard, a mouse, a microphone, and the like, the outputsection 407 including a display, a speaker, and the like. The CPU 401executes various processing in accordance with respective instructionsinput from the input section 406. Then, the CPU 401 outputs theprocessing result to the output section 407.

The storage section 408 connected to the input/output interface 405includes, for example, a hard disk, and stores the programs to beexecuted by the CPU 401 and various data. A communication section 409communicates with an external apparatus through a network such as theInternet or a local area network.

In addition, programs may be acquired through the communication section409 and stored in the storage section 408.

A drive 410 is connected to the input/output interface 405. When aremovable medium 411 such as a magnetic disk, an optical disk, amagnetic-optical disk, or a semiconductor memory is loaded onto thedrive 410, the drive 410 drives the removable medium 411 and acquiresprograms, data, and the like stored in the removable medium 411. Theacquired programs and data are transferred to the storage section 408 asnecessary, and are stored in the storage section 408.

The recording medium that records (stores) the program to be installedin the computer and made executable by the computer includes theremovable medium 411 which is a package medium including a magnetic disk(including a flexible disk), an optical disk (including a CD-ROM(Compact Disc-Read Only Memory), and a DVD (Digital Versatile Disc)), amagnetic-optical disk (including an MD (Mini-Disc)), a semiconductormemory, and the like; the ROM 402 that temporarily or permanently storesthe programs; the hard disk forming the storage section 408; and thelike, as illustrated in FIG. 27. The program is recorded in therecording medium as necessary through the communication section 409which is an interface such as a router or a modem, by utilizing a wiredor wireless communication medium such as a local area network, theInternet, or digital satellite broadcast.

In the present specification, steps of describing the above series ofprocesses may include processing performed in time-series according tothe described order and processing not processed in time-series butperformed in parallel or individually.

In addition, the system in the specification includes a plurality ofapparatuses and processing sections, and represents the entiretythereof.

Further, various modifications may occur insofar as they are within thescope of the present disclosure without limitation to the embodimentdescribed above.

REFERENCE SIGNS LIST

-   1 communication system-   21 ₁ to 21 _(n) terminal-   22 network-   23 serer-   101 manipulation section-   102 generation section-   103 communication section-   104 display control section-   105 display section-   121 communication section-   122 update section-   123 storage section-   124 display information generation section

The invention claimed is:
 1. An apparatus comprising: at least oneprocessor; and at least one non-transitory storage device storingprocessor-executable instructions that, when executed by the at leastone processor, cause the apparatus to perform a method, the methodcomprising: acquiring an editing target, the editing target beingeditable by a plurality of users that includes a first user and a seconduser; acquiring information of an editing type of the second user,generating display information for displaying in a display areareferenced by the first user based on the information of the editingtype of the second user; and outputting the display information, whereinthe display information includes first state information for displayinga state of editing by the second user when the editing type of thesecond user is a first type, wherein the display information includessecond state information for displaying a state of editing by the seconduser when the editing type of the second user is a second type, andwherein an amount of display information included in the first stateinformation is more than an amount of display information included inthe second state information.
 2. The apparatus according to claim 1,wherein the first state information comprises an image related toidentification information of the second user, and wherein the imagerelated to the identification information of the second user comprisesone or more selected from a group consisting of a picture, an icon, anavatar, and a composite drawing corresponding to the second user.
 3. Theapparatus according to claim 1, wherein the first state informationcomprises a cursor corresponding to a position of the second user withinthe editing target, and wherein the cursor comprises a caret.
 4. Theapparatus according to claim 1, wherein the display area includes afirst area and a second area.
 5. The apparatus according to claim 4,wherein the first area includes a first part of the editing target, andwherein the first user is capable of editing at least one of text andimages displayed in the first part of the editing target included in thefirst area.
 6. The apparatus according to claim 5, wherein the firststate information comprises a cursor corresponding to a position of thesecond user within the editing target, and wherein the cursor isdisplayed in the first area when the second user edits within the firstpart of the editing target.
 7. The apparatus according to claim 6,wherein the second state information comprises information indicatingwhether the second user is editing and does not include the cursor. 8.The apparatus according to claim 1, wherein the display informationcomprises an image related to identification information of the seconduser, and wherein the image related to the identification information ofthe second user is displayed based on the first state information and isnot displayed based on the second state information.
 9. The apparatusaccording to claim 1, wherein the first state information comprises moredetail than the second state information regarding an editing status ofthe second user.
 10. The apparatus according to claim 1, wherein thefirst type of editing comprises collaboration and the second type ofediting comprises exclusion.
 11. The apparatus according to claim 10,wherein, when the editing type of the second user is the first type, thefirst user is able to edit within an editing range of the editing targeteditable by the second user, and wherein, when the editing type of thesecond user is the second type, the first user is unable to edit withinthe editing range editable by the second user.
 12. An informationprocessing method, performed via at least one processor, the methodcomprising: acquiring an editing target, the editing target beingeditable by a plurality of users that includes a first user and a seconduser; acquiring information of an editing type of the second user,generating display information for displaying in a display areareferenced by the first user based on the information of the editingtype of the second user; and outputting the display information, whereinthe display information includes first state information for displayinga state of editing by the second user when the editing type of thesecond user is a first type, wherein the display information includessecond state information for displaying a state of editing by the seconduser when the editing type of the second user is a second type, andwherein an amount of display information included in the first stateinformation is more than an amount of display information included inthe second state information.
 13. The method according to claim 12,wherein the first state information comprises an image related toidentification information of the second user, and wherein the imagerelated to the identification information of the second user comprisesone or more selected from a group consisting of a picture, an icon, anavatar, and a composite drawing corresponding to the second user. 14.The method according to claim 12, wherein the first state informationcomprises a cursor corresponding to a position of the second user withinthe editing target, and wherein the cursor comprises a caret.
 15. Themethod according to claim 12, wherein the display area includes a firstarea and a second area.
 16. The method according to claim 15, whereinthe first area includes a first part of the editing target, and whereinthe first user is capable of editing at least one of text and imagesdisplayed in the first part of the editing target included in the firstarea.
 17. The method according to claim 16, wherein the first stateinformation comprises a cursor corresponding to a position of the seconduser within the editing target, and wherein the cursor is displayed inthe first area when the second user edits within the first part of theediting target.
 18. The method according to claim 17, wherein the secondstate information comprises information indicating whether the seconduser is editing and does not include the cursor.
 19. The methodaccording to claim 12, wherein the display information comprises animage related to identification information of the second user, andwherein the image related to the identification information of thesecond user is displayed based on the first state information and is notdisplayed based on the second state information.
 20. An informationprocessing apparatus comprising: a processor configured to acquire anediting target, the editing target being editable by a plurality ofusers that includes a first user and a second user, acquire informationof an editing type of the second user, generate display information fordisplaying in a display area reference by the first user based on theinformation of the editing type of the second user, and output thedisplay information, wherein the display information includes firststate information for displaying a state of editing by the second userwhen the editing type of the second user is a first type, wherein thedisplay information includes second state information for displaying astate of editing by the second user when the editing type of the seconduser is a second type, and wherein an amount of display informationincluded in the first state information is more than an amount ofdisplay information included in the second state information.
 21. Theapparatus according to claim 20, wherein the first state informationcomprises an image related to identification information of the seconduser, and wherein the image related to the identification information ofthe second user comprises one or more selected from a group consistingof a picture, an icon, an avatar, and a composite drawing correspondingto the second user.
 22. The apparatus according to claim 20, wherein thefirst state information comprises a cursor corresponding to a positionof the second user within the editing target, and wherein the cursorcomprises a caret.
 23. The apparatus according to claim 20, wherein thedisplay area includes a first area and a second area.
 24. The apparatusaccording to claim 23, wherein the first area includes a first part ofthe editing target, and wherein the first user is capable of editing atleast one of text and images displayed in the first part of the editingtarget included in the first area.
 25. The apparatus according to claim24, wherein the first state information comprises a cursor correspondingto a position of the second user within the editing target, and whereinthe cursor is displayed in the first area when the second user editswithin the first part of the editing target.
 26. The apparatus accordingto claim 25, wherein the second state information comprises informationindicating whether the second user is editing and does not include thecursor.
 27. The apparatus according to claim 20, wherein the displayinformation comprises an image related to identification information ofthe second user, and wherein the image related to the identificationinformation of the second user is displayed based on the first stateinformation and is not displayed based on the second state information.